The Programmer's Guide to SCSI

Companion CD-ROM


This companion CD-ROM contains sample code, tools, and documentation that you will find helpful as you explore SCSI further. For a more accurate listing of the contents, see Appendix D in the book.

Keep in mind that SCSI is a rapidly evolving technology. Some of the contents of the CD-ROM may be out of date by the time you read this. Nevertheless, it's convenient to have them at your fingertips.

SCSI Draft Specifications

The SCSI-1, SCSI-2, and SCSI-3 draft specifications appear under the SCSISpec directory. The older specifications are plain text files and Adobe Acrobat PDF files. The components of the SCSI-3 draft specification are distributed as PDF and PostScript files. You'll need Adobe's Acrobat Reader to view the PDF files. We have included it in the Acrobat directory.

We have also included Gary Bartlett's HTML transcription of the SCSI-2 draft specification.

Many parts of the SCSI-3 specification are still under revision. For the latest updates, check the T10 Committee web site.

Note that these are the draft specifications distributed by the National Committee for Information Technology Standards (NCITS), formerly the X3 Committee. They are not intended as a substitute for obtaining a copy of the of the approved ANSI standards.

Sample Code

The SCRIPTS sample code and the source code for the SCSI Snooper application appear on the disk under the SampCode directory. You'll find the source code along with the compiled applications.

You'll also find the source code for the TSPI target mode API library under the SampCode directory.

SCSI Frequently Asked Questions

No SCSI book would be complete without a copy of Gary Field's SCSI FAQ. You'll find it in the SCSIFaq directory. This document is posted monthly in the comp.periphs.scsi usenet newsgroup.

Symbios SCRIPTS Support

The Symbios subdirectory contains tools and sample code for working with the SCRIPTS language. You'll find the NASM compiler in the Tools subdirectory, along with the NVPCI debugger.

The 8xxdev directory contains sample code that demonstrates using SCRIPTS for SCSI initiator code. Other source files in this directory contain utility routines you'll want to use for your own software.

The 8xxtarg directory contains sample code that demonstrates using SCRIPTS for target mode applications. The sample application creates a virtual SCSI disk drive that can be useful for testing other applications.

Linux SCSI Documentation

Under the Linux directory on the CD-ROM, you'll find the Linux HOWTO documents for SCSI support and SCSI programming. The SCSI programming HOWTO document contains an example application that uses the Linux
SCSI pass-through feature.

We have also included an archive of the kernel source code for version 2.0.30. You'll need Gnu zip to unpack the tar file, or a Windows utility like WinZip. The linux/drivers/scsi directory in the archive holds driver source code for a variety of SCSI host adapters and the code for the SCSI pass-through driver, sg.c. Other SCSI support files are found in the linux/include/scsi directory of the archive.